home *** CD-ROM | disk | FTP | other *** search
-
-
-
- iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333)))) IIIImmmmaaaaggggeeeeVVVViiiissssiiiioooonnnn LLLLiiiibbbbrrrraaaarrrryyyy CCCC++++++++ RRRReeeeffffeeeerrrreeeennnncccceeee MMMMaaaannnnuuuuaaaallll iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333))))
-
-
-
- NNNNAAAAMMMMEEEE
- iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg - class to perform morphological dilation
-
- IIIINNNNHHHHEEEERRRRIIIITTTTSSSS FFFFRRRROOOOMMMM
- ilLink : ilImage : ilCacheImg : ilMemCacheImg : ilOpImg : ilSpatialImg
-
- HHHHEEEEAAAADDDDEEEERRRR FFFFIIIILLLLEEEE
- #include <il/ilDilateImg.h>
-
- CCCCLLLLAAAASSSSSSSS DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- This class is publicly derived from ilSpatialImg and performs
- morphological dilation. This operation is defined on "binary" or
- "grayscale" images. "Binary" or "grayscale" has nothing to do with color
- models, but indicates how the pixel values or intensities are
- interpreted. A binary image in this sense contains no more than two
- levels or intensity values: zero and not zero. An 8-bit image with 256
- pixel intensities can be treated as a binary image: 0 pixel intensity
- representing one level, and all intensities between 1 and 255
- representing another level. That is, the full range of pixel intensities
- is collapsed into two levels. A grayscale image includes more than two
- intensity values. The same 8-bit image is now treated, as it is by any
- other operator, as an image with 256 pixel intensities. Typically, the
- input image has a single channel. If input is multichanneled, then the
- operations are performed on each channel independently.
-
- Derived from ilSpatialImg, the dilation operation involves moving a
- kernel across an image. The operation performed, however, is not a
- weighted sum. In morphological operations, the kernel is called a
- "structuring element" (SE), and is represented by an _i_l_K_e_r_n_e_l object.
- The SE, like the input image, can be interpreted as "binary" or
- "grayscale".
-
- The interpretation of the numbers that make up an SE depends on the type
- of morphological operation being performed. The type of operation can be
- specified by the enumerated type, _i_l_M_o_r_p_h_T_y_p_e, that is defined in
- <_i_l/_i_l_T_y_p_e_s._h>. Negative SE elements are always treated as logical
- "don't cares"; when the operation is in progress, image pixels under
- negative SE elements are ignored. Thus, the support of the SE is limited
- to those elements that are nonnegative ( >= 0 ). This permits the
- creation of odd-shaped SEs. The image pixel under the SEs origin is the
- one potentially modified. You can change the origin of the SE by using
- ilKernel's sssseeeettttOOOOrrrriiiiggggiiiinnnn() function. If not specified, the origin defaults
- to (M/2, N/2) for a M x N SE.
-
- The result of dilation on a binary image (regardless of whether the SE is
- binary or grayscale) is to turn every pixel either "ON" or "OFF" That is,
- a pixel in the output image is assigned one of two intensities: the "ON"
- intensity or the "OFF" intensity. The "ON" intensity is set to equal the
- maximum value of this class and the "OFF" intensity is set to equal the
- minimum value of this class. These can be set using the sssseeeettttMMMMiiiinnnnVVVVaaaalllluuuueeee() and
- sssseeeettttMMMMaaaaxxxxVVVVaaaalllluuuueeee() functions inherited from ilImage. If not set, these values
- are inherited from the input image.
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333)))) IIIImmmmaaaaggggeeeeVVVViiiissssiiiioooonnnn LLLLiiiibbbbrrrraaaarrrryyyy CCCC++++++++ RRRReeeeffffeeeerrrreeeennnncccceeee MMMMaaaannnnuuuuaaaallll iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333))))
-
-
-
- The interpretation of the image or SE as binary or grayscale can be
- controlled through the enumerated type, _i_l_M_o_r_p_h_T_y_p_e. Depending on this
- interpretation, the output varies.
-
- If the input image and the SE are binary (_i_l_M_o_r_p_h_T_y_p_e = _i_l_B_i_n_B_i_n), then
- the SE is used to peform a hit-or-miss operation. That is, if a 0-valued
- image pixel falls under a 0 SE element, or if a positive ( > 0 ) image
- pixel falls under a positive ( > 0 ), the image pixel beneath the SE
- origin is assigned the ON intensity (maximum value); otherwise, it is
- assigned the OFF intensity.
-
- If the input image is binary and the SE is grayscale (_i_l_M_o_r_p_h_T_y_p_e =
- _i_l_B_i_n_G_r_a_y), then the nonnegative ( >= 0 ) SE elements determine the
- support area. That is, image pixels under negative SE elements are
- ignored. If a positive ( > 0 ) image pixel ( > 0 ) falls under a
- nonnegative ( >= 0 ) SE element. Then the target pixel, under the SE
- origin, is assigned the ON intensity (maximum value); otherwise, it is
- assigned the OFF intensity.
-
- Typically for binary images, the SE is composed of -1s and +1s.
-
- If the input image is grayscale, then the dilate operation amounts to
- computing the maximum of the image pixels within the SE support area.
-
- If the input image is grayscale and the SE type is binary (_i_l_M_o_r_p_h_T_y_p_e =
- _i_l_G_r_a_y_B_i_n), then the maximum value of the image pixels falling under
- positive ( > 0 ) SE elements is computed and assigned to the target
- pixel. This is similar to the operation of ilMaxFltImg.
-
- If the input image and SE are both grayscale and a "set" operation is
- desired (_i_l_M_o_r_p_h_T_y_p_e = _i_l_G_r_a_y_G_r_a_y_S_e_t), then the maximum value of the
- image pixels falling under nonnegative
- ( >= 0 ) SE elements is computed and assigned to the target pixel.
-
- If a "function" operation is desired (_i_l_M_o_r_p_h_T_y_p_e = _i_l_G_r_a_y_G_r_a_y_F_c_t), then
- the computation is the same as for _i_l_G_r_a_y_G_r_a_y_S_e_t, except that the SE
- elements are added to the image pixels before computing the maximum
- value.
-
- Functions are provided to dynamically change the type of morphological
- operation (_i_l_M_o_r_p_h_T_y_p_e) being performed. Derived from ilSpatialImg,
- ilDilateImg inherits functions like sssseeeettttKKKKeeeerrrrnnnneeeellll() and sssseeeettttKKKKeeeerrrrnnnneeeellllSSSSiiiizzzzeeee() that
- can be used to change the SE.
-
- The edge mode can be specified as described for ilSpatialImg.
-
- The minimum and maximum pixel values, _m_i_n_V_a_l_u_e and _m_a_x_V_a_l_u_e, are
- adjusted. The values are based on the input minimum and maximum pixel
- values, and in the case where _i_l_M_o_r_p_h_T_y_p_e = _i_l_G_r_a_y_G_r_a_y_F_c_t, on the SE
- element values also. If the adjusted minimum and maximum pixel values
- are outside the range of values supported by the current data type, then
- the data type is promoted to support the new range of values. This
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333)))) IIIImmmmaaaaggggeeeeVVVViiiissssiiiioooonnnn LLLLiiiibbbbrrrraaaarrrryyyy CCCC++++++++ RRRReeeeffffeeeerrrreeeennnncccceeee MMMMaaaannnnuuuuaaaallll iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333))))
-
-
-
- occurs only if the data type has not already been explicitly set.
-
- If the data type has not been explicitly set, the minimum and maximum
- pixel values are set to the new adjusted values. The _m_i_n_V_a_l_u_e and
- _m_a_x_V_a_l_u_e values can be used. For example, use them when the results of
- the dilation need to be displayed on a monitor and the data must be
- scaled to fit the range of values allowed by the display.
-
- Valid data types for this operation are _i_l_U_C_h_a_r, _i_l_U_S_h_o_r_t and _i_l_U_L_o_n_g.
-
- CCCCLLLLAAAASSSSSSSS MMMMEEEEMMMMBBBBEEEERRRR FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNN SSSSUUUUMMMMMMMMAAAARRRRYYYY
- CCCCoooonnnnssssttttrrrruuuuccccttttoooorrrr
-
- ilDilateImg(ilImage* inputImage, ilMorphType mtype = ilBinGray,
- ilKernel* se = NULL, ilEdgeMode edgeMode = ilPadSrc)
-
- ggggeeeetttt////sssseeeetttt iiiillllMMMMoooorrrrpppphhhhTTTTyyyyppppeeee
-
- ilMorphType getMorphType()
- void setMorphType(ilMorphType type)
-
-
- FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNN DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNNSSSS
- iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg(((())))
-
- ilDilateImg(ilImage* inputImage, ilMorphType mtype = ilBinGray,
- ilKernel* se = NULL, ilEdgeMode edgeMode = ilPadSrc)
-
-
- The constructor specifies the source image, _i_n_p_u_t_I_m_a_g_e; the type of
- morphological operation _m_t_y_p_e; the structuring element, _s_e; and the
- edge mode, _e_d_g_e_M_o_d_e. All of the parameters can be altered using the
- appropriate set function: sssseeeettttIIIInnnnppppuuuutttt(((()))), sssseeeettttMMMMoooorrrrpppphhhhTTTTyyyyppppeeee(), sssseeeettttKKKKeeeerrrrnnnneeeellll(((()))),
- and sssseeeettttEEEEddddggggeeeeMMMMooooddddeeee(((()))).
-
- ggggeeeettttMMMMoooorrrrpppphhhhTTTTyyyyppppeeee(((())))
-
- ilMorphType getMorphType()
-
-
- Returns the type of morphological operation currently being
- performed.
-
- sssseeeettttMMMMoooorrrrpppphhhhTTTTyyyyppppeeee(((())))
-
- void setMorphType(ilMorphType type)
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-
-
-
- iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333)))) IIIImmmmaaaaggggeeeeVVVViiiissssiiiioooonnnn LLLLiiiibbbbrrrraaaarrrryyyy CCCC++++++++ RRRReeeeffffeeeerrrreeeennnncccceeee MMMMaaaannnnuuuuaaaallll iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333))))
-
-
-
- Sets the type of morphological operation to be performed to _t_y_p_e.
-
- IIIINNNNHHHHEEEERRRRIIIITTTTEEEEDDDD MMMMEEEEMMMMBBBBEEEERRRR FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNNSSSS
- IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm iiiillllSSSSppppaaaattttiiiiaaaallllIIIImmmmgggg
- calcPage(), getEdgeMode(), getKernelSize(), getPage(), resetOp(),
- setEdgeMode(), setKernel(), setKernelSize(), setKernFlags()
-
- IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm iiiillllOOOOppppIIIImmmmgggg
- checkMinMax(), clearClamp(), getBias(), getClamp(), getInputMax(),
- getInputMin(), getInputScaleMax(), getInputScaleMin(), getValidOrders(),
- getValidTypes(), isClamped(), isDiff(), isPrecisionKept(),
- keepPrecision(), resetOp(), setBias(), setClamp(), setMaxPageSize(),
- setMinPageSize(), setValidOrder(), setValidType(), setWorkingType()
-
- IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm iiiillllMMMMeeeemmmmCCCCaaaacccchhhheeeeIIIImmmmgggg
- allocPage(), doUserPageAlloc(), enableMP(), executeRequest(),
- finishRequest(), freePage(), getGlobalThrashMode(), getMpRequest(),
- getPage(), getPageAllocTime(), getPageTime(), getRetainMode(),
- getRetainPath(), getThrashMode(), getThrashTime(), getTotalPageTime(),
- isMPenabled(), isUserPageAlloc(), prepareRequest(),
- setGlobalThrashMode(), setPage(), setPageAllocTime(), setRetainMode(),
- setRetainPath(), setThrashMode(),
-
- IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm iiiillllCCCCaaaacccchhhheeeeIIIImmmmgggg
- enablePagingCallback(), flush(), getCacheSize(),
- isPagingCallbackEnabled(), listResident()
-
- IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm iiiillllIIIImmmmaaaaggggeeee
- addInput(), allocFillData(), checkColorModel(), checkValidOrder(),
- checkValidType(), clipTile(), configureRetainedCache(), copy(),
- copyTile(), copyTile3D(), copyTileCfg(), fillTile(), fillTile3D(),
- fillTileRGB(), freeFillData(), getColorImg(), getColorModel(),
- getColormap(), getCompression(), getConfig(), getCopyConverter(),
- getCsize(), getDataType(), getDimensions(), getDirectInput(),
- getDisplayCacheEnable(), getFill(), getFillData(), getFillValue(),
- getHeight(), getHwEnable(), getHwHint(), getHwIntHint(), getHwOp(),
- getHwPassTable(), getInput(), getInputTileRequirement(),
- getLockTileSet(), getMaxColormapLevels(), getMaxValue(), getMinValue(),
- getNumChans(), getNumInputs(), getOrder(), getOrientation(),
- getPageBorder(), getPageBorderX(), getPageBorderY(), getPageBorderZ(),
- getPageCounts(), getPageDelta(), getPageDimensions(), getPageIndices(),
- getPageOrigin(), getPageOriginC(), getPageOriginX(), getPageOriginY(),
- getPageOriginZ(), getPageSize(), getPageSizeC(), getPageSizePix(),
- getPageSizeVal(), getPageSizeX(), getPageSizeY(), getPageSizeZ(),
- getPixel(), getPixel3D(), getPriority(), getScaleMax(), getScaleMin(),
- getSize(), getStrides(), getSubTile(), getSubTile3D(), getTile(),
- getTile3D(), getWidth(), getXsize(), getYsize(), getZsize(),
- hasPageBorder(), hasPages(), hwDefine(), hwGetPass(), inherit(),
- initColorModel(), initHwEnable(), initMinMax(), initPageSize(),
- initScaleMinMax(), isColorImg(), isIntegral(), isMirrorOrientation(),
- isPartialPage(), isSigned(), isValidPage(), isWritable(), lockPage(),
- lockPageSet(), lockTile(), lockTile3D(), mapFlipTrans(), mapFromInput(),
-
-
-
- PPPPaaaaggggeeee 4444
-
-
-
-
-
-
- iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333)))) IIIImmmmaaaaggggeeeeVVVViiiissssiiiioooonnnn LLLLiiiibbbbrrrraaaarrrryyyy CCCC++++++++ RRRReeeeffffeeeerrrreeeennnncccceeee MMMMaaaannnnuuuuaaaallll iiiillllDDDDiiiillllaaaatttteeeeIIIImmmmgggg((((3333))))
-
-
-
- mapFromSource(), mapOrientation(), mapSize(), mapTile(), mapToInput(),
- mapToSource(), mapXY(), mapXYSign(), outOfBound(), qCopyTileCfg(),
- qFillTile3D(), qFillTileRGB(), qGetSubTile3D(), qGetTile3D(),
- qLockPageSet(), qSetSubTile3D(), qSetTile3D(), removeHwHint(),
- removeInput(), reset(), setColorModel(), setColormap(), setCompression(),
- setCsize(), setDataType(), setDisplayCacheEnable(), setFill(),
- setFillValue(), setHwEnable(), setHwHint(), setHwIntHint(), setInput(),
- setMaxColormapLevels(), setMaxValue(), setMinValue(), setNumChans(),
- setNumInputs(), setOrder(), setOrientation(), setPageBorder(),
- setPageSize(), setPageSizeC(), setPageSizeZ(), setPixel(), setPixel3D(),
- setPriority(), setScaleMinMax(), setScaleType(), setSize(), setSubTile(),
- setSubTile3D(), setTile(), setTile3D(), setTileRequirementFunction(),
- setWritable(), setXsize(), setYsize(), setZsize(), unlockPage(),
- unlockPageSet()
-
- IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm iiiillllLLLLiiiinnnnkkkk
- addResetCallback(), alterAction(), anyAltered(), clearAllowed(),
- clearSet(), clearStatus(), deleteRelated(), disableAltered(),
- dumpChain(), getClassPropSet(), getDescription(), getDirectParent(),
- getDisabledIndex(), getFloatProp(), getGenerationID(), getIntProp(),
- getMaxIndex(), getMinIndex(), getNumChildren(), getNumParents(),
- getParent(), getProp(), getProp(), getPropSet(), getPtrProp(),
- getRelatedChild(), getRelatedDelete(), getRelatedType(), getStatus(),
- hasResetCallbacks(), ilGetClassPropSet(), inProgress(), isAllowed(),
- isAltered(), isEnabled(), isRelated(), isSet(), markSet(), mpUnlock(),
- neverReset(), newRelatedType(), removeParent(), removeProp(),
- removeResetCallback(), reset(), resetAltered(), resetCheck(),
- setAllowed(), setAltered(), setDescription(), setDisabledIndex(),
- setEnabled(), setParent(), setProp(), setPropAltered(),
- setRelatedDelete(), setRelatedType(), setStatus(), stopWatching(),
- unalterable(), watch(), watchNotify()
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- ilImage, ilCacheImg, ilMemCacheImg, ilOpImg, ilSpatialImg, ilErodeImg
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 5555
-
-
-
-